package com.dify.knowledge.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.List;

/**
 * Dify Chat API响应DTO
 */
@Data
public class DifyChatResponse {
    
    /**
     * 回答内容
     */
    private String answer;
    
    /**
     * 对话ID
     */
    @JsonProperty("conversation_id")
    private String conversationId;
    
    /**
     * 消息ID
     */
    @JsonProperty("message_id")
    private String messageId;
    
    /**
     * 引用来源列表
     */
    @JsonProperty("metadata")
    private Metadata metadata;
    
    @Data
    public static class Metadata {
        /**
         * 检索结果
         */
        @JsonProperty("retriever_resources")
        private List<RetrieverResource> retrieverResources;
    }
    
    @Data
    public static class RetrieverResource {
        /**
         * 文档ID
         */
        @JsonProperty("document_id")
        private String documentId;
        
        /**
         * 文档名称
         */
        @JsonProperty("document_name")
        private String documentName;
        
        /**
         * 相关度分数
         */
        private Double score;
        
        /**
         * 引用内容
         */
        private String content;
    }
}
